package DBLayer;

import java.sql.SQLException;

import ModelLayer.*;
import java.util.ArrayList;

/**
 * @author Gruppe 2
 *
 */
public interface IFDBProduct {
	/**
	 * @param p
	 * @throws SQLException
	 */
	public void insertProduct(Product p) throws SQLException;
	/**
	 * @param id
	 * @return Product
	 * @throws SQLException
	 */
	public Product selectSingleProduct(int id) throws SQLException;
	/**
	 * @param p
	 * @throws SQLException
	 */
	public void updateProduct(Product p) throws SQLException;
	/**
	 * @param p
	 * @throws SQLException
	 * 
	 * Not Implementet. Deleting products opens a whole can of worms! /Jan
	 */
	public void deleteProduct(Product p) throws SQLException;
	/**
	 * @return ArrayList<Product>
	 * @throws SQLException
	 */
	public ArrayList<Product> selectAllProduct() throws SQLException;
	
}
